As the world progresses more and more into the digital age, people are acquiring increasingly large collections of different types of digital media. Advances in computer technology have allowed personal computers to become a central hub for the browsing and management of numerous types of digital media. Correspondingly there has been a rise of programs that allow the user to access, maintain and organize their entire media collection in a single location.
With this ever increasing quantity of digital media, the ability to easily and quickly browse one's media collection becomes increasingly important to ensure that a user can quickly get to the media he or she desires and thus has a positive experience. One popular method of navigation in a media environment is a web or internet browsing based model in which objects and menus are arranged in a hierarchical manner. This web browsing model involves recording or storing of the users movements through a media environment as he or she moves forward and backward. As a user follows links from website to website each webpage is stored as the user moves through the internet. Each link followed is a forward movement which adds the new location to the navigation history. After making at least one forward movement the user can make a backward movement which brings them to a previously visited page. Often times this is invoked by pressing a back button that is on screen, a keyboard or remote.
FIG. 1 shows a flowchart of an exemplary navigation in a media environment and an exemplary data structure. The exemplary data structure is can be implemented as a first in last out data structure such as stack 150 with top position 152. Upon entering the media environment browsing program the stack 150 will contain only the root menu page. At step 102, a user is presented with a root menu page upon starting the media environment browsing program. This is similar to how a user is presented with a homepage upon starting a web browser. Further, the root menu page acts like a website in that it has numerous menu items that link the user to various media areas.
The media environment browsing program will store and track the user's navigation history as the user moves around in the media environment. The navigation history will be stored in a last in first out data structure such as stack 150. As the user moves forward each location visited will be added to the top position 152 of stack 150. When the user makes a backward movement, the user is brought to the location that is at the top position 152 of stack 150 and that location is removed from stack 150.
At step 104, the user has selected the menu item on the root menu page corresponding to the video library. Thus, the user is now in the video library where he or she may move around within the video library and select various video sources and videos.
At step 108, the user has decided to move to another media area, so he or she moves to a menu page by pressing an on screen menu button, keyboard key or remote control button. On the menu page the user may browse the various types of media areas that are available and choose another media area. At step 110, the user is at the music library based on selecting the music library on the menu page in the previous step. Once in the music library, he or she may browse the music by numerous pieces of information such as artist, album or genre.
At step 112, the user is brought to a menu page where he or she can again browse and make a selection among the various media areas. At step 114, the user is brought to the recorded TV media area where he or she can browse and select various previously recorded television segments to play. At step 116, the user may decide to choose another media area and so will go to a menu page. From this menu page the user selects the picture library.
At step 118, in the picture library the user can browse various photo albums and view photos based on date and other information. The top position 152 of exemplary stack 150, now contains all previously visited locations with the picture library in the top position 152.
At step 120 the user was in the picture library but has decided that he or she wishes to go to a previous area or move backward. This decision may be for a variety of reasons including changing a currently playing media and selecting a new media to play in a previously visited area. In order to move backwards in the navigation history which was stored as each media area was visited previously; the user will press an on screen back button, keyboard key or remote control button. It is appreciated that in some embodiments, upon making a backward movement the information stored in the top position 152 of stack 150 will be removed when the user is brought to the location stored in top position 152.
At step 122, the user is brought to the menu page which is the first location in the navigation history after the picture library. This is the menu page from which the user previously selected the picture library. Upon moving to the menu page, the information associated with the menu page will be remove from stack 150 and top position 152 will now contain recorded TV location information.
At step 124, the user again presses the back button and is brought back to the recorded TV area which is the next area in the navigation record. The top position 152 will now be occupied by a menu page which was previously used to select the recorded TV area. Within the recorded TV area the user will again be able to browse around in this area and select a new or previous media to play.
At step 126, the user again presses the back button and is brought back to a menu page which was previous visited from which the user previously selected the recorded TV media area. The top position 152 of stack 150 will now contain the music library. Like with the media areas, the user may browse around the menu page and still be able to move backwards.
At step 128, the user has again moved backward and now is in the previously visited music library. The top position 152 of stack 150 now contains a menu page which was previously used to select the music library. At step 130, the user moves backward and is brought to the menu page that during forward navigation was used to select the music library. The top position 152 now contains the video library.
At step 132, the user is brought to the Video library media area that was the first selection the user previously made from the root menu page. The top position 152 of stack 150 will now contain the root menu page. At step 134, the user makes a final backward navigation which brings him or her to the root menu page. This is the menu page the user was presented upon opening the media environment browsing program.
One drawback of using this model is that when the user desires to move to previously visited areas that was several locations prior, he or she must move through each and every prior location. As illustrated in the above example of backward navigation, the user must move through each and every intervening menu page that was used to select a media area. Thus, as the user moves backward though numerous pages to get to desired page, the movement may become tedious, and the user may become frustrated by this cumbersome method associated with navigating backwards through their previous selections.